﻿//-------------------------------------------------------------------
//	Copyright (c) 2010-2014  Zhirnov Andrey
//	This file is part of the "UX Standard Lib" project.
//	See copyright notice in "UX_STL_Ext.h".
//-------------------------------------------------------------------
/*
	Warning: Window and other classes are deprecated!
*/

#ifndef _UXS_OPERATING_SYSTEM_H
#define _UXS_OPERATING_SYSTEM_H

#pragma once

#include "OSPlatform.h"

#ifdef PLATFORM_WINDOWS
#	include "Windows/Window.h"
#	include "Windows/GLWindow.h"
#endif

#ifdef PLATFORM_LINUX
#	include "Linux/Window.h"
#	include "Linux/GLWindow.h"
#endif

#ifdef PLATFORM_ANDROID
#endif

#ifdef PLATFORM_SDL
#else

# ifdef PLATFORM_ANDROID
#	include "Android/OSAndroid.h"
#	include "../Types/Java/JavaClass.h"
#	include "../Types/Java/JavaMethod.h"
#	include "../Types/Java/JavaArray.h"
#	include "../Types/Java/JavaString.h"
#	include "../Types/Java/JavaTypeInfo.h"
# endif

#endif

namespace UX_STL
{
namespace UXTypesExt
{
	//struct TThreadLocalStorage;
	//typedef _platform_::Mutex				TMutex;				
	//struct TSystemMsg;
	//struct THandles;
	//struct TWindowClass;

	typedef _platform_::CWindow				CWindow;
	
#ifdef UX_OPENGL_WINDOW_HANDLES
	typedef _platform_::GLWindow			GLWindow;
#endif

	typedef CWindow::TWndClass				TWindowClass;
	typedef _platform_::THandles			THandles;
	
}	// UXTypesExt
}	// UX_STL

//-------------------------------------------------------------------


#endif	// _UXS_OPERATING_SYSTEM_H